8118ff49289b055f706c0d8296d41ae75c672675,src/main/java/com/fasterxml/jackson/dataformat/javaprop/util/JPropPathSplitter.java,JPropPathSplitter,_asInt,#String#,84
Before Change
final int len = segment.length();
if (len > 0) {
for (int i = 0; i < len; ++i) {
char c = segment.charAt(i);
if ((c > '9') || (c < '0')) {
return -1;
}
}
// Fine; is simple int indeed (possibly with leading zeroes)
if (len <= 9) {
return Integer.parseInt(segment);
}
if (len == 10) {
After Change
protected int _asInt(String segment) {
final int len = segment.length();
// do not allow ridiculously long numbers as indexes
if ((len == 0) || (len > 9)) {
return -1;
}
char c = segment.charAt(0);
if ((c > '9') || (c < '0')) {
return -1;
}
for (int i = 0; i < len; ++i) {
c = segment.charAt(i);
if ((c > '9') || (c < '0')) {
return -1;
}
}